<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="de">
<head>
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>ExceptionUtils (Apache Commons Lang 3.3.2 API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="ExceptionUtils (Apache Commons Lang 3.3.2 API)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ExceptionUtils.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/commons/lang3/exception/ExceptionContext.html" title="interface in org.apache.commons.lang3.exception"><span class="strong">Prev Class</span></a></li>
<li>Next Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/commons/lang3/exception/ExceptionUtils.html" target="_top">Frames</a></li>
<li><a href="ExceptionUtils.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.commons.lang3.exception</div>
<h2 title="Class ExceptionUtils" class="title">Class ExceptionUtils</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.commons.lang3.exception.ExceptionUtils</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="strong">ExceptionUtils</span>
extends <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block"><p>Provides utilities for manipulating and examining 
 <code>Throwable</code> objects.</p></div>
<dl><dt><span class="strong">Since:</span></dt>
  <dd>1.0</dd>
<dt><span class="strong">Version:</span></dt>
  <dd>$Id: ExceptionUtils.java 1436770 2013-01-22 07:09:45Z ggregory $</dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#ExceptionUtils()">ExceptionUtils</a></strong>()</code>
<div class="block">
 Public constructor allows an instance of <code>ExceptionUtils</code> to be created, although that is not
 normally necessary.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getCause(java.lang.Throwable)">getCause</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>This feature will be removed in Lang 4.0</i></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getCause(java.lang.Throwable, java.lang.String[])">getCause</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
        <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;methodNames)</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>This feature will be removed in Lang 4.0</i></div>
</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getDefaultCauseMethodNames()">getDefaultCauseMethodNames</a></strong>()</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>This feature will be removed in Lang 4.0</i></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getMessage(java.lang.Throwable)">getMessage</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;th)</code>
<div class="block">Gets a short message summarising the exception.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getRootCause(java.lang.Throwable)">getRootCause</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</code>
<div class="block">Introspects the <code>Throwable</code> to obtain the root cause.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getRootCauseMessage(java.lang.Throwable)">getRootCauseMessage</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;th)</code>
<div class="block">Gets a short message summarising the root cause exception.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getRootCauseStackTrace(java.lang.Throwable)">getRootCauseStackTrace</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</code>
<div class="block">Creates a compact stack trace for the root cause of the supplied
 <code>Throwable</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getStackFrames(java.lang.Throwable)">getStackFrames</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</code>
<div class="block">Captures the stack trace associated with the specified
 <code>Throwable</code> object, decomposing it into a list of
 stack frames.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getStackTrace(java.lang.Throwable)">getStackTrace</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</code>
<div class="block">Gets the stack trace from a Throwable as a String.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getThrowableCount(java.lang.Throwable)">getThrowableCount</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</code>
<div class="block">Counts the number of <code>Throwable</code> objects in the
 exception chain.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getThrowableList(java.lang.Throwable)">getThrowableList</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</code>
<div class="block">Returns the list of <code>Throwable</code> objects in the
 exception chain.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>[]</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getThrowables(java.lang.Throwable)">getThrowables</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</code>
<div class="block">Returns the list of <code>Throwable</code> objects in the
 exception chain.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#indexOfThrowable(java.lang.Throwable, java.lang.Class)">indexOfThrowable</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
                <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;clazz)</code>
<div class="block">Returns the (zero based) index of the first <code>Throwable</code>
 that matches the specified class (exactly) in the exception chain.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#indexOfThrowable(java.lang.Throwable, java.lang.Class, int)">indexOfThrowable</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
                <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;clazz,
                int&nbsp;fromIndex)</code>
<div class="block">Returns the (zero based) index of the first <code>Throwable</code>
 that matches the specified type in the exception chain from
 a specified index.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#indexOfType(java.lang.Throwable, java.lang.Class)">indexOfType</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
           <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;type)</code>
<div class="block">Returns the (zero based) index of the first <code>Throwable</code>
 that matches the specified class or subclass in the exception chain.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#indexOfType(java.lang.Throwable, java.lang.Class, int)">indexOfType</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
           <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;type,
           int&nbsp;fromIndex)</code>
<div class="block">Returns the (zero based) index of the first <code>Throwable</code>
 that matches the specified type in the exception chain from
 a specified index.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#printRootCauseStackTrace(java.lang.Throwable)">printRootCauseStackTrace</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</code>
<div class="block">Prints a compact stack trace for the root cause of a throwable
 to <code>System.err</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#printRootCauseStackTrace(java.lang.Throwable, java.io.PrintStream)">printRootCauseStackTrace</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
                        <a href="http://docs.oracle.com/javase/6/docs/api/java/io/PrintStream.html?is-external=true" title="class or interface in java.io">PrintStream</a>&nbsp;stream)</code>
<div class="block">Prints a compact stack trace for the root cause of a throwable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#printRootCauseStackTrace(java.lang.Throwable, java.io.PrintWriter)">printRootCauseStackTrace</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
                        <a href="http://docs.oracle.com/javase/6/docs/api/java/io/PrintWriter.html?is-external=true" title="class or interface in java.io">PrintWriter</a>&nbsp;writer)</code>
<div class="block">Prints a compact stack trace for the root cause of a throwable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#removeCommonFrames(java.util.List, java.util.List)">removeCommonFrames</a></strong>(<a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;causeFrames,
                  <a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;wrapperFrames)</code>
<div class="block">Removes common frames from the cause trace given the two stack traces.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="ExceptionUtils()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ExceptionUtils</h4>
<pre>public&nbsp;ExceptionUtils()</pre>
<div class="block"><p>
 Public constructor allows an instance of <code>ExceptionUtils</code> to be created, although that is not
 normally necessary.
 </p></div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="getDefaultCauseMethodNames()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultCauseMethodNames</h4>
<pre><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public static&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;getDefaultCauseMethodNames()</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>This feature will be removed in Lang 4.0</i></div>
<div class="block"><p>Returns the default names used when searching for the cause of an exception.</p>

 <p>This may be modified and used in the overloaded getCause(Throwable, String[]) method.</p></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>cloned array of the default method names</dd><dt><span class="strong">Since:</span></dt>
  <dd>3.0</dd></dl>
</li>
</ul>
<a name="getCause(java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCause</h4>
<pre><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public static&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;getCause(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>This feature will be removed in Lang 4.0</i></div>
<div class="block"><p>Introspects the <code>Throwable</code> to obtain the cause.</p>

 <p>The method searches for methods with specific names that return a 
 <code>Throwable</code> object. This will pick up most wrapping exceptions,
 including those from JDK 1.4.

 <p>The default list searched for are:</p>
 <ul>
  <li><code>getCause()</code></li>
  <li><code>getNextException()</code></li>
  <li><code>getTargetException()</code></li>
  <li><code>getException()</code></li>
  <li><code>getSourceException()</code></li>
  <li><code>getRootCause()</code></li>
  <li><code>getCausedByException()</code></li>
  <li><code>getNested()</code></li>
 </ul>
 
 <p>If none of the above is found, returns <code>null</code>.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to introspect for a cause, may be null</dd>
<dt><span class="strong">Returns:</span></dt><dd>the cause of the <code>Throwable</code>,
  <code>null</code> if none found or null throwable input</dd><dt><span class="strong">Since:</span></dt>
  <dd>1.0</dd></dl>
</li>
</ul>
<a name="getCause(java.lang.Throwable, java.lang.String[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCause</h4>
<pre><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public static&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;getCause(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
                            <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;methodNames)</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>This feature will be removed in Lang 4.0</i></div>
<div class="block"><p>Introspects the <code>Throwable</code> to obtain the cause.</p>

 <p>A <code>null</code> set of method names means use the default set.
 A <code>null</code> in the set of method names will be ignored.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to introspect for a cause, may be null</dd><dd><code>methodNames</code> - the method names, null treated as default set</dd>
<dt><span class="strong">Returns:</span></dt><dd>the cause of the <code>Throwable</code>,
  <code>null</code> if none found or null throwable input</dd><dt><span class="strong">Since:</span></dt>
  <dd>1.0</dd></dl>
</li>
</ul>
<a name="getRootCause(java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRootCause</h4>
<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;getRootCause(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</pre>
<div class="block"><p>Introspects the <code>Throwable</code> to obtain the root cause.</p>

 <p>This method walks through the exception chain to the last element,
 "root" of the tree, using <a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getCause(java.lang.Throwable)"><code>getCause(Throwable)</code></a>, and
 returns that exception.</p>

 <p>From version 2.2, this method handles recursive cause structures
 that might otherwise cause infinite loops. If the throwable parameter
 has a cause of itself, then null will be returned. If the throwable
 parameter cause chain loops, the last element in the chain before the
 loop is returned.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to get the root cause for, may be null</dd>
<dt><span class="strong">Returns:</span></dt><dd>the root cause of the <code>Throwable</code>,
  <code>null</code> if none found or null throwable input</dd></dl>
</li>
</ul>
<a name="getThrowableCount(java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getThrowableCount</h4>
<pre>public static&nbsp;int&nbsp;getThrowableCount(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</pre>
<div class="block"><p>Counts the number of <code>Throwable</code> objects in the
 exception chain.</p>

 <p>A throwable without cause will return <code>1</code>.
 A throwable with one cause will return <code>2</code> and so on.
 A <code>null</code> throwable will return <code>0</code>.</p>

 <p>From version 2.2, this method handles recursive cause structures
 that might otherwise cause infinite loops. The cause chain is
 processed until the end is reached, or until the next item in the
 chain is already in the result set.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to inspect, may be null</dd>
<dt><span class="strong">Returns:</span></dt><dd>the count of throwables, zero if null input</dd></dl>
</li>
</ul>
<a name="getThrowables(java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getThrowables</h4>
<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>[]&nbsp;getThrowables(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</pre>
<div class="block"><p>Returns the list of <code>Throwable</code> objects in the
 exception chain.</p>

 <p>A throwable without cause will return an array containing
 one element - the input throwable.
 A throwable with one cause will return an array containing
 two elements. - the input throwable and the cause throwable.
 A <code>null</code> throwable will return an array of size zero.</p>

 <p>From version 2.2, this method handles recursive cause structures
 that might otherwise cause infinite loops. The cause chain is
 processed until the end is reached, or until the next item in the
 chain is already in the result set.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to inspect, may be null</dd>
<dt><span class="strong">Returns:</span></dt><dd>the array of throwables, never null</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#getThrowableList(java.lang.Throwable)"><code>getThrowableList(Throwable)</code></a></dd></dl>
</li>
</ul>
<a name="getThrowableList(java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getThrowableList</h4>
<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&gt;&nbsp;getThrowableList(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</pre>
<div class="block"><p>Returns the list of <code>Throwable</code> objects in the
 exception chain.</p>

 <p>A throwable without cause will return a list containing
 one element - the input throwable.
 A throwable with one cause will return a list containing
 two elements. - the input throwable and the cause throwable.
 A <code>null</code> throwable will return a list of size zero.</p>

 <p>This method handles recursive cause structures that might
 otherwise cause infinite loops. The cause chain is processed until
 the end is reached, or until the next item in the chain is already
 in the result set.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to inspect, may be null</dd>
<dt><span class="strong">Returns:</span></dt><dd>the list of throwables, never null</dd><dt><span class="strong">Since:</span></dt>
  <dd>Commons Lang 2.2</dd></dl>
</li>
</ul>
<a name="indexOfThrowable(java.lang.Throwable, java.lang.Class)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>indexOfThrowable</h4>
<pre>public static&nbsp;int&nbsp;indexOfThrowable(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
                   <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;clazz)</pre>
<div class="block"><p>Returns the (zero based) index of the first <code>Throwable</code>
 that matches the specified class (exactly) in the exception chain.
 Subclasses of the specified class do not match - see
 <a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#indexOfType(java.lang.Throwable, java.lang.Class)"><code>indexOfType(Throwable, Class)</code></a> for the opposite.</p>

 <p>A <code>null</code> throwable returns <code>-1</code>.
 A <code>null</code> type returns <code>-1</code>.
 No match in the chain returns <code>-1</code>.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to inspect, may be null</dd><dd><code>clazz</code> - the class to search for, subclasses do not match, null returns -1</dd>
<dt><span class="strong">Returns:</span></dt><dd>the index into the throwable chain, -1 if no match or null input</dd></dl>
</li>
</ul>
<a name="indexOfThrowable(java.lang.Throwable, java.lang.Class, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>indexOfThrowable</h4>
<pre>public static&nbsp;int&nbsp;indexOfThrowable(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
                   <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;clazz,
                   int&nbsp;fromIndex)</pre>
<div class="block"><p>Returns the (zero based) index of the first <code>Throwable</code>
 that matches the specified type in the exception chain from
 a specified index.
 Subclasses of the specified class do not match - see
 <a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#indexOfType(java.lang.Throwable, java.lang.Class, int)"><code>indexOfType(Throwable, Class, int)</code></a> for the opposite.</p>

 <p>A <code>null</code> throwable returns <code>-1</code>.
 A <code>null</code> type returns <code>-1</code>.
 No match in the chain returns <code>-1</code>.
 A negative start index is treated as zero.
 A start index greater than the number of throwables returns <code>-1</code>.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to inspect, may be null</dd><dd><code>clazz</code> - the class to search for, subclasses do not match, null returns -1</dd><dd><code>fromIndex</code> - the (zero based) index of the starting position,
  negative treated as zero, larger than chain size returns -1</dd>
<dt><span class="strong">Returns:</span></dt><dd>the index into the throwable chain, -1 if no match or null input</dd></dl>
</li>
</ul>
<a name="indexOfType(java.lang.Throwable, java.lang.Class)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>indexOfType</h4>
<pre>public static&nbsp;int&nbsp;indexOfType(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
              <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;type)</pre>
<div class="block"><p>Returns the (zero based) index of the first <code>Throwable</code>
 that matches the specified class or subclass in the exception chain.
 Subclasses of the specified class do match - see
 <a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#indexOfThrowable(java.lang.Throwable, java.lang.Class)"><code>indexOfThrowable(Throwable, Class)</code></a> for the opposite.</p>

 <p>A <code>null</code> throwable returns <code>-1</code>.
 A <code>null</code> type returns <code>-1</code>.
 No match in the chain returns <code>-1</code>.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to inspect, may be null</dd><dd><code>type</code> - the type to search for, subclasses match, null returns -1</dd>
<dt><span class="strong">Returns:</span></dt><dd>the index into the throwable chain, -1 if no match or null input</dd><dt><span class="strong">Since:</span></dt>
  <dd>2.1</dd></dl>
</li>
</ul>
<a name="indexOfType(java.lang.Throwable, java.lang.Class, int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>indexOfType</h4>
<pre>public static&nbsp;int&nbsp;indexOfType(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
              <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;type,
              int&nbsp;fromIndex)</pre>
<div class="block"><p>Returns the (zero based) index of the first <code>Throwable</code>
 that matches the specified type in the exception chain from
 a specified index.
 Subclasses of the specified class do match - see
 <a href="../../../../../org/apache/commons/lang3/exception/ExceptionUtils.html#indexOfThrowable(java.lang.Throwable, java.lang.Class)"><code>indexOfThrowable(Throwable, Class)</code></a> for the opposite.</p>

 <p>A <code>null</code> throwable returns <code>-1</code>.
 A <code>null</code> type returns <code>-1</code>.
 No match in the chain returns <code>-1</code>.
 A negative start index is treated as zero.
 A start index greater than the number of throwables returns <code>-1</code>.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to inspect, may be null</dd><dd><code>type</code> - the type to search for, subclasses match, null returns -1</dd><dd><code>fromIndex</code> - the (zero based) index of the starting position,
  negative treated as zero, larger than chain size returns -1</dd>
<dt><span class="strong">Returns:</span></dt><dd>the index into the throwable chain, -1 if no match or null input</dd><dt><span class="strong">Since:</span></dt>
  <dd>2.1</dd></dl>
</li>
</ul>
<a name="printRootCauseStackTrace(java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printRootCauseStackTrace</h4>
<pre>public static&nbsp;void&nbsp;printRootCauseStackTrace(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</pre>
<div class="block"><p>Prints a compact stack trace for the root cause of a throwable
 to <code>System.err</code>.</p>

 <p>The compact stack trace starts with the root cause and prints
 stack frames up to the place where it was caught and wrapped.
 Then it prints the wrapped exception and continues with stack frames
 until the wrapper exception is caught and wrapped again, etc.</p>

 <p>The output of this method is consistent across JDK versions.
 Note that this is the opposite order to the JDK1.4 display.</p>

 <p>The method is equivalent to <code>printStackTrace</code> for throwables
 that don't have nested causes.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to output</dd><dt><span class="strong">Since:</span></dt>
  <dd>2.0</dd></dl>
</li>
</ul>
<a name="printRootCauseStackTrace(java.lang.Throwable, java.io.PrintStream)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printRootCauseStackTrace</h4>
<pre>public static&nbsp;void&nbsp;printRootCauseStackTrace(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
                            <a href="http://docs.oracle.com/javase/6/docs/api/java/io/PrintStream.html?is-external=true" title="class or interface in java.io">PrintStream</a>&nbsp;stream)</pre>
<div class="block"><p>Prints a compact stack trace for the root cause of a throwable.</p>

 <p>The compact stack trace starts with the root cause and prints
 stack frames up to the place where it was caught and wrapped.
 Then it prints the wrapped exception and continues with stack frames
 until the wrapper exception is caught and wrapped again, etc.</p>

 <p>The output of this method is consistent across JDK versions.
 Note that this is the opposite order to the JDK1.4 display.</p>

 <p>The method is equivalent to <code>printStackTrace</code> for throwables
 that don't have nested causes.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to output, may be null</dd><dd><code>stream</code> - the stream to output to, may not be null</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the stream is <code>null</code></dd><dt><span class="strong">Since:</span></dt>
  <dd>2.0</dd></dl>
</li>
</ul>
<a name="printRootCauseStackTrace(java.lang.Throwable, java.io.PrintWriter)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printRootCauseStackTrace</h4>
<pre>public static&nbsp;void&nbsp;printRootCauseStackTrace(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable,
                            <a href="http://docs.oracle.com/javase/6/docs/api/java/io/PrintWriter.html?is-external=true" title="class or interface in java.io">PrintWriter</a>&nbsp;writer)</pre>
<div class="block"><p>Prints a compact stack trace for the root cause of a throwable.</p>

 <p>The compact stack trace starts with the root cause and prints
 stack frames up to the place where it was caught and wrapped.
 Then it prints the wrapped exception and continues with stack frames
 until the wrapper exception is caught and wrapped again, etc.</p>

 <p>The output of this method is consistent across JDK versions.
 Note that this is the opposite order to the JDK1.4 display.</p>

 <p>The method is equivalent to <code>printStackTrace</code> for throwables
 that don't have nested causes.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to output, may be null</dd><dd><code>writer</code> - the writer to output to, may not be null</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the writer is <code>null</code></dd><dt><span class="strong">Since:</span></dt>
  <dd>2.0</dd></dl>
</li>
</ul>
<a name="getRootCauseStackTrace(java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRootCauseStackTrace</h4>
<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;getRootCauseStackTrace(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</pre>
<div class="block"><p>Creates a compact stack trace for the root cause of the supplied
 <code>Throwable</code>.</p>

 <p>The output of this method is consistent across JDK versions.
 It consists of the root exception followed by each of its wrapping
 exceptions separated by '[wrapped]'. Note that this is the opposite
 order to the JDK1.4 display.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the throwable to examine, may be null</dd>
<dt><span class="strong">Returns:</span></dt><dd>an array of stack trace frames, never null</dd><dt><span class="strong">Since:</span></dt>
  <dd>2.0</dd></dl>
</li>
</ul>
<a name="removeCommonFrames(java.util.List, java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeCommonFrames</h4>
<pre>public static&nbsp;void&nbsp;removeCommonFrames(<a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;causeFrames,
                      <a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;wrapperFrames)</pre>
<div class="block"><p>Removes common frames from the cause trace given the two stack traces.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>causeFrames</code> - stack trace of a cause throwable</dd><dd><code>wrapperFrames</code> - stack trace of a wrapper throwable</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if either argument is null</dd><dt><span class="strong">Since:</span></dt>
  <dd>2.0</dd></dl>
</li>
</ul>
<a name="getStackTrace(java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStackTrace</h4>
<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getStackTrace(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</pre>
<div class="block"><p>Gets the stack trace from a Throwable as a String.</p>

 <p>The result of this method vary by JDK version as this method
 uses <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true#printStackTrace(java.io.PrintWriter)" title="class or interface in java.lang"><code>Throwable.printStackTrace(java.io.PrintWriter)</code></a>.
 On JDK1.3 and earlier, the cause exception will not be shown
 unless the specified throwable alters printStackTrace.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the <code>Throwable</code> to be examined</dd>
<dt><span class="strong">Returns:</span></dt><dd>the stack trace as generated by the exception's
  <code>printStackTrace(PrintWriter)</code> method</dd></dl>
</li>
</ul>
<a name="getStackFrames(java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStackFrames</h4>
<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&nbsp;getStackFrames(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</pre>
<div class="block"><p>Captures the stack trace associated with the specified
 <code>Throwable</code> object, decomposing it into a list of
 stack frames.</p>

 <p>The result of this method vary by JDK version as this method
 uses <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true#printStackTrace(java.io.PrintWriter)" title="class or interface in java.lang"><code>Throwable.printStackTrace(java.io.PrintWriter)</code></a>.
 On JDK1.3 and earlier, the cause exception will not be shown
 unless the specified throwable alters printStackTrace.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>throwable</code> - the <code>Throwable</code> to examine, may be null</dd>
<dt><span class="strong">Returns:</span></dt><dd>an array of strings describing each stack frame, never null</dd></dl>
</li>
</ul>
<a name="getMessage(java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMessage</h4>
<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getMessage(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;th)</pre>
<div class="block">Gets a short message summarising the exception.
 <p>
 The message returned is of the form
 {ClassNameWithoutPackage}: {ThrowableMessage}</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>th</code> - the throwable to get a message for, null returns empty string</dd>
<dt><span class="strong">Returns:</span></dt><dd>the message, non-null</dd><dt><span class="strong">Since:</span></dt>
  <dd>Commons Lang 2.2</dd></dl>
</li>
</ul>
<a name="getRootCauseMessage(java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getRootCauseMessage</h4>
<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getRootCauseMessage(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;th)</pre>
<div class="block">Gets a short message summarising the root cause exception.
 <p>
 The message returned is of the form
 {ClassNameWithoutPackage}: {ThrowableMessage}</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>th</code> - the throwable to get a message for, null returns empty string</dd>
<dt><span class="strong">Returns:</span></dt><dd>the message, non-null</dd><dt><span class="strong">Since:</span></dt>
  <dd>Commons Lang 2.2</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ExceptionUtils.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/commons/lang3/exception/ExceptionContext.html" title="interface in org.apache.commons.lang3.exception"><span class="strong">Prev Class</span></a></li>
<li>Next Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/commons/lang3/exception/ExceptionUtils.html" target="_top">Frames</a></li>
<li><a href="ExceptionUtils.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2001&#x2013;2014 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>
